From: Florian Müllner Date: Mon, 4 Feb 2019 23:30:41 +0000 (+0100) Subject: panel: Desaturate appmenu icon X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~897^2^2~5 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=1c117c469a23a0d2608abf39c86caca251bc1d5a;p=gnome-shell.git panel: Desaturate appmenu icon Top bar icons are supposed to by symbolic, but not all applications provide a symbolic icon. Make the stick out less by desaturating the appmenu icon if a symbolic style is requested. https://gitlab.gnome.org/GNOME/gnome-shell/issues/624 --- diff --git a/js/ui/panel.js b/js/ui/panel.js index e67a0fd9a..fb846fc62 100644 --- a/js/ui/panel.js +++ b/js/ui/panel.js @@ -222,9 +222,16 @@ var AppMenuButton = GObject.registerClass({ textureCache.connect('icon-theme-changed', this._onIconThemeChanged.bind(this)); + let iconEffect = new Clutter.DesaturateEffect(); this._iconBox = new St.Bin({ style_class: 'app-menu-icon' }); + this._iconBox.add_effect(iconEffect); this._container.add_actor(this._iconBox); + this._iconBox.connect('style-changed', () => { + let themeNode = this._iconBox.get_theme_node(); + iconEffect.enabled = themeNode.get_icon_style() == St.IconStyle.SYMBOLIC; + }); + this._label = new St.Label({ y_expand: true, y_align: Clutter.ActorAlign.CENTER }); this._container.add_actor(this._label);